package leetcode6;

import java.util.*;

/*
* 48. 旋转图像
* */
public class test18 {
    /*
    * 自己算法*/
//    public void rotate(int[][] matrix) {
//        List<Integer> list =  new ArrayList<>();
//        int m = matrix.length;
//        int n = matrix[0].length;
//        for(int i = 0;i < m;i++){
//            for(int j = 0;j < n;j++){
//                list.add(matrix[i][j]);
//            }
//        }
//        int index = 0;
//        for(int i = n - 1;i >= 0;i--){
//            for(int j = 0;j < m;j++){
//                matrix[j][i] = list.get(index);
//                index++;
//            }
//        }
//        for(int i = 0;i < m;i++){
//            for(int j = 0;j < n;j++){
//                System.out.print(matrix[i][j]);
//            }
//        }
//    }
public void rotate(int[][] matrix) {
    int n = matrix.length;
    for (int i = 0; i < n / 2; i++) {
        for (int j = 0; j < (n + 1) / 2; j++) {
            int tmp = matrix[i][j];
            matrix[i][j] = matrix[n - 1 - j][i];
            matrix[n - 1 - j][i] = matrix[n - 1 - i][n - 1 - j];
            matrix[n - 1 - i][n - 1 - j] = matrix[j][n - 1 - i];
            matrix[j][n - 1 - i] = tmp;
        }
    }
}
}
